// This is where I translated the XML by hand, the way I expected the implementation (which I hadn't yet started) to.
// Aside from comments, I was exactly right.

package silly;

import java.util.ArrayList;

public class SillyConfig
{
	public static SomeClass make(final int rootX)
	{
		final SomeClass _t0 = new SomeClass("Hello",true);
		_t0.setX(rootX);
		_t0.setY(new SillyY("Hi there"),true);
		_t0.foo(4 < 7 && 5 % 2 == 1,1,2,3);
		{
			final int[] _t1 = new int[] {2,3,5,7,11};
			final SomeClass _t2 = new SomeClass("Nesty",false);
			_t2.setX(5);
			final SomeClass twice = new SomeClass(null,true);
			twice.setX(-1);
			_t0.bar(_t1,new SomeClass[] {_t2,twice,twice});
			_t0.bar(new int[10],new SomeClass[20]);
			final ArrayList<SomeClass> _t3 = new ArrayList<SomeClass>(10);
			_t3.add(twice);
			_t3.add(twice);
			_t0.baz(_t3);
			_t0.baz(new ArrayList<SomeClass>(new SomeClass[] {twice,twice}));
			_t0.baz(new ArrayList<SomeClass>(new SomeClass[] {twice,twice}));
			_t0.baz(new ArrayList<SomeClass>(new SomeClass[] {twice,twice}));
			final SomeClass _t4 = new SomeClass("Nesty2",true);
			final SillyY soSilly = new SillyY("Bye now");
			_t4.setY(soSilly,false);
			twice.baz(new ArrayList<SomeClass>(new SomeClass[] {_t4}));
			{
				final SomeClass t = new SomeClass("Nesty3",true);
				t.setY(soSilly,true);
				twice.baz(new ArrayList<SomeClass>(new SomeClass[] {t}));
			}
			twice.baz(new ArrayList<SomeClass>(new SomeClass[] {new SomeClass("No Y",true)}));
			_t0.baz(new ArrayList<SomeClass>(new SomeClass[] {twice,twice}));
		}
		_t0.baz(new ArrayList<SomeClass>(new SomeClass[] {twice,twice})); // Scope error!
		return _t0;
	}
}
